Voice biometrics (VB) may be used to identify and authenticate speakers, for example, in call centers. Audio packets containing speech may be analyzed, and a voiceprint may be generated and used to identify the speaker. A voiceprint may be specific to a user, similar to a fingerprint. Voiceprints may be used for operations such as enrollment or authentication of a speaker, and for fraud detection, for example by comparing voiceprints of a speaker to voiceprints of known fraudsters.
Current VB engines are session-based. A stream of data from a call, e.g., one speaker in a call, is processed and accumulated by the engine. Once there is enough speech, a voiceprint is created from the accumulated data. Due to this method, all the data of a speaker in certain call should be passed to a single designated engine, in the case of multiple engines. Only the designated engine processes the voice and thus only this engine can perform biometric operations based on the voice. When a call starts, and data starts to flow, a session is opened with one of the VB engines. Data buffers of a caller's data may be provided to the chosen VB engine. When the system gets a request from the client side, e.g., from the agent (e.g. a person) that is handling the call with the caller, the request must be directed to the same VB engine that has been analyzing the data of the call. The request may be for example: Authenticate the caller, compare to known fraudsters or enrich an existing voiceprint. Thus, each call is engaged to a single VB engine which reduces the flexibility end efficiency of the system.